Modélisation Sysml

Modélisation Sysml

Introduction

Le SysML (Systems Modeling Language) est un langage de modélisation graphique spécifique au domaine de l'ingénierie système. Il permet :

  • l'analyse

  • la conception

  • les tests

  • et la validation

de nombreux systèmes et systèmes-de-systèmes. Il est donc utiliser par tous les acteurs intervenant lors de la vie du système.

Mais ce n'est pas un outil exhaustif car il ne représente que les informations nécessaires permettant de saisir les intensions au travers de 3 points de vue. et 9 diagrammes.

Les 6 diagrammes étudiés

ComplémentLe diagramme de contexte

Ce diagramme non normalisé permet de présenter le système étudié dans son environnement utilise un diagramme de block (bdd) comme modèle.

Présentation de l'exemple d'application

Pour illustrer chaque diagramme Sysml, l'exemple utilisé sera une balance de cuisine dont les caractéristiques sont les suivantes :

  • Précision de 1 g ;

  • Charge maximale = 4kg ;

  • Dimensions : 250 x 200x 40mm

  • Interface Homme/Machine :

  • Bouton Marche/Arrêt/Tare

  • Bouton Conversion g/ml

  • Afficheur LCD 4 digits

  • Fonctionne avec une pile Cr2032 fournie

  • Design épuré aux formes circulaires ;

  • Gamme de 5 coloris tendances ;

  • Conforme aux directives DEEE et RoHS

Balance Halo

Modélisation structurelle CONTEXTE

Diagramme de contexte

Il présente tous les éléments externes qui influencent le système étudié et le système lui-même. Il utilise la représentation des diagrammes de blocks BDD ou de blocks internes IBD.

Balance Halo
  • Utilise un diagramme des cas d’utilisation ; voir chapitres suivants.

  • Utilise un diagramme des exigences ; voir chapitres suivants.

Modélisation fonctionnelle EXIGENCE

Diagramme des exigences (REQ)

Le diagramme d’exigence est une représentation du cahier des charges. Il doit recenser les fonctions et les contraintes du système qu'on appelle "Exigence" (Requirement). Les exigences servent à établir un contrat (au sens légal) entre les différents partenaires.

  • Les fonctions et les contraintes sont exprimées de manière préférentiel par un verbe du premier groupe à l'infinitif

Le système devra ainsi réaliser des niveaux de contraintes ou les conditions de performances qui devront être satisfaites par le système.

Elles sont représentées par des cadres hiérarchisés contenant différentes informations (noms, identifiant, description, niveau de performance,...) reliés entre eux par des liens de contenance.

Cartouche du diagramme

Ce cartouche situé en haut à gauche spécifie le type de diagramme et le nom du système concerné

Propriétés de base d'un bloc

Un bloc d'exigence contient au minimum :

  • Un libellé de fonction

  • Un identifiant unique :id. Cet identifiant suivant rang 1. ou 1.1 ou encore 1.1.1 indique le niveau hiérarchique du bloc considéré

  • Et presque systématiquement un texte descriptif

Les liaisons

  • Contenance

décompose une exigence composite en plusieurs exigences unitaire

  • Raffinement

<<refine>> permet l'ajout de précisions, des données quantitatives par exemple.

  • Dérivation

<<deriveReqt>> relie des exigences de niveaux différents, des exigences système à des exigences de niveau sous-système

  • Satisfy

    définit un composant issu du diagramme de bloc (bdd) qui satisfait l'exigence

Notes graphiques

Deux mots-clés particuliers ont été définis afin de les représenter :

  • des problèmes à résoudre <<problem >>

  • des justificatifs <<rationale >>

La traçabilité

Elle permet de s’assurer de la cohérence entre ce que fait réellement le projet et ce qu’il doit faire afin de faciliter l’analyse d’impact en cas de changement.

Le diagramme d’exigences permet ainsi tout au long d’un projet de relier les exigences avec d’autres types d’élément SysML par plusieurs relations :

  • <<refine>> en liaison avec les diagrammes :

    • cas d’utilisation

    • diagramme d’états

    • , etc.

  • <<satisfy>> bloc d’architecture

    • lien avec l'élément qui satisfait l'exigence

Modélisation comportementale CAS D'UTILISATION

Diagramme des cas d'utilisation (UC)

  • Il représente les services effectués par le système du point de vue de l'acteur sans spécifier comment il le fera.

  • Il permet également de déterminer les frontières du système en le plaçant dans son contexte

  • A ce niveau les fonctions internes ne sont pas décrites.

Nom du système

On rappel le nom du système en haut de la frontière de celui-ci.

Les acteurs

Un acteur représente un rôle qui peut être tenu par un humain ou n’importe quel autre système. Il indique avec quoi le système sera en interaction.

L’acteur principal humain est celui pour qui le cas d’utilisation produit un résultat concret. Il est possible d’avoir plusieurs acteurs principaux.

  • Le symbole est à gauche du diagramme

Les acteurs secondaires(non sont souvent sollicités pour des informations complémentaires ; ils peuvent uniquement consulter ou informer le système lors de l’exécution du cas d’utilisation.

  • Leur symbole est à droite du diagramme

Cas d'utilisation

La recherche des cas d’utilisation consiste à trouver des cas dans lesquels le système est utilisé pour mener à bien une tâche spécifique d’un acteur.

  • Chaque cas représente un ensemble de séquence d’actions réalisées par le système.

  • Les cas d'utilisation sont exprimées de manière préférentiel par un verbe du premier groupe à l'infinitif

Relation d'inclusion :<<include>>

Il permet de faire ressortir une sous-fonctionnalité. Le cas d’utilisation de base inclut obligatoirement le service décrit par cette relation.

Relation d'extension :<<extend>>

Le cas d’utilisation de base incorpore un autre cas d’utilisation mais optionnel.

Modélisation structurelle DEFINITION DE BLOC

Diagramme de définition de bloc (BDD)

Il décrit la structure du système en montrant :

  • les sous-ensembles (nommés blocs) qui le constituent

  • les relations qui les lient par des liens de composition.

  • en donnant une représentation statique

Il existe deux types de diagrammes de block :

  • Le diagramme de bloc du système

  • Le diagramme de bloc de contexte ? Ce diagramme non normalisé a été évoqué précédemment.

Le diagramme de bloc du système

Le BDD du système définit l’architecture matérielle et logicielle de l’ensemble du système ou d’un sous-ensemble.

Le bloc

Le bloc contient différentes propriétés ,qui peuvent être :

  • Propriétés de type « Valeurs » : caractéristiques quantifiables (couleur, marque, année de mise en service, etc.).

  • Propriétés de type « Parties » : elles décrivent la décomposition du bloc en termes d’autres blocs.

Relations

Relation de type Composition :

  • Le bloc contenu fait partie du bloc principal. Un bloc représente le tout, et les autres ses parties

Lien d'agrégation forte précisant la quantité de blocs contenus.

Relation de type Agrégation :

  • Le bloc ne fait pas partie du bloc principal. Pour fonctionner le bloc principal n’a pas forcément besoin du bloc contenu mais il peut en avoir besoin à un moment donné.

Modélisation structurelle DEFINITION DE BLOC INTERNE

Diagramme de définition de bloc interne (IBD)

  • Ce diagramme (internal block diagram ou ibd) permet de décrire la structure interne d’un bloc extrait du BDD.

  • Ce bloc extrait peut être le système, un sous-système, ou un bloc élémentaire.

  • Il décrit les échanges de flux d’énergie, de matière ou d’information. Il est possible d’y adjoindre leur nature ; électrique, mécanique, pneumatique...

Ports des blocs internes

Chaque bloc interne possède un ou plusieurs ports, par lesquels vont transiter :

  • les flux

  • les consignes

Port de flux :

  • Il permet de faire entrer ou sortir un flux du bloc.

  • Il peut être unidirectionnel ou bidirectionnel.

  • Les flux sont ici des flux physiques dont ont peu nommer la nature

Port standard :

Un port standard permet de connecter le bloc à une consigne, un ordre de commande ou un service.

Modélisation comportementale SEQUENCE

Diagramme de séquence (SEQ)

Le diagramme de séquence est un diagramme comportemental qui décrit la chronologie des échanges issus d'un cas d'utilisation entre les acteurs et le système et/ou ses sous-systèmes.

Il complète le diagramme de cas d’utilisation en décrivant graphiquement les interactions à l’aide de messages.

  • Dans un premier temps, un diagramme de séquence «système» permet de décrire le comportement du système vu de l’extérieur.

  • Les principales informations contenues dans un diagramme de séquence sont les messages échangés entre les lignes de vie, présentés dans un ordre chronologique.

  • On a un diagramme de séquence par cas d’utilisation

Lecture

Le diagramme de séquence se lit de haut en bas :

  • Ligne de vie : ligne verticale en pointillée représentant un élément participant au diagramme de séquence. Elle possède un nom et un type.

  • Message : é l é m e n t d e communication unidirectionnel entre lignes de vie qui déclenche une activité dans le destinataire. La réception d’un message provoque un événement chez le récepteur.

Message asynchrone

L’émetteur envoie son message sans attendre de réponse en retour ( :

  • Symbole : flèche pleine terminée par deux traits.

Message synchrone

L’émetteur du message est bloqué en attente de la réponse ; il ne fait rien entre l’émission et la réception.

  • Symbole :flèche pleine et triangle noir plein

Il y a forcément un retour ; le message retour est le résultat direct du message précédent

  • Symbole :flèche en pointillés

Message réflexif

Ce message représente un comportement interne

Fragments combinés

Un fragment combiné permet de faire apparaître un comportement différent en fonction de certaines conditions.

Boucle <<Loop>>

Les échanges contenus dans un fragment combiné de type «Boucle» sont réalisés tant qu’une condition appelée condition de garde est vraie.

Boucle <<Option>>

Les échanges contenus dans un fragment combine de type «Option» ne sont réalisés que si la condition de garde est vraie.

Boucle <<Alt>>

En fonction de l’état de la condition de garde, l’une ou l’autre des possibilités contenues dans le fragment sera réalisée.

Modélisation comportementale ETAT

Diagramme d'état (STM)

On appellera «état» une situation d’une durée finie pendant laquelle le système :

  • exécute une activité particulière (constitué de plusieurs actions)

  • satisfait à une certaine condition ou est en attente d’un événement.

Le passage d’un état à un autre se fait en franchissant une transition.

Le diagramme d’état décrit les états successifs d'un système ou d’un sous-système qui occupent des états bien définis au cours de leur fonctionnement (machine d'état). C'est notamment le cas du fonctionnement séquentiel.

Les états

Etat initial : il désigne le point de départ de la séquence qui peut correspondre à ma mise en énergie

Etat final : il représente la fin du fonctionnement su système qui peut correspondre à la mise hors énergie. Plus aucun état n'est actif

Etat : un état représente une situation pendant laquelle: il satisfait une certaine condition, il exécute une certaine activité, il attend un certain événement.

Etat composite : aussi appelé super-état; il permet d’englober plusieurs sous-états. Il comporte un état initial.

Transition

Elle représente l'évolution du système d'un état à un autre selon une condition de déclenchement.

Fourche

Active simultanément 2 états à partir d'un état antérieur. Il existe également l'union qui active 1 état à partir de 2 états précédents.

La description d’un état peut inclure des événements internes, afin de montrer la réponse de l’état à l'occurrence de ces événements. Les événements entry, do et exit indiquent ce qu’il se passe :

  • à l’entrée dans l’état (mot clé entry),

  • pendant l’état (do),

  • à la sortie de l’état (exit).

Liste des raccourcis clavier

Liste des fonctions de navigation et leurs raccourcis clavier correspondant :

  • Bloc Suivant : flèche droite, flèche bas, barre espace, page suivante, touche N
  • Bloc Précédent : flèche gauche, flèche haut, retour arrière, page précédente, touche P
  • Diapositive Suivante : touche T
  • Diapositive Précédente : touche S
  • Retour accueil : touche Début
  • Menu : touche M
  • Revenir à l'accueil : touche H
  • Fermer zoom : touche Échap.